//
//  UICollectionView+ZBCollectionView.h
//  XZBProduct
//
//  Created by xzb on 2018/7/23.
//  Copyright © 2018年 xzb. All rights reserved.
//

#import <UIKit/UIKit.h>
#import "ZBCollectionProtoFactory.h"
#import "ZBCollectionMaker.h"
#import "ZBDataSource.h"
#import "ZBCollectionData.h"

@interface UICollectionView(ZBDataSource)

@property (nonatomic, strong, readonly) ZBDataSource *zb_dataSource;
@property (nonatomic, strong, readonly) ZBCollectionData *zb_collectionData;

@end

@interface UICollectionView (ZBCollectionView)

+ (instancetype)zb_initialize;

- (void)zb_configTableView:(void(^)(ZBCollectionProtoFactory *config))block;

- (void)zb_setup:(void(^)(ZBCollectionMaker *maker))block;

- (void)zb_replaceSection:(NSString *)tag block:(void(^)(ZBCollectionMaker *maker))block;

- (void)zb_appendSection:(NSString *)tag block:(void(^)(ZBCollectionMaker *maker))block;

- (void)zb_appendRowsForSection:(NSString *)tag block:(void(^)(ZBCollectionMaker *maker))block;

@end
